Revisiting Design Patterns After 20 By Edson Yanaga